16357
20783
Jag undrade, fördröjer mellanslag och kommentarer JavaScript? Jag gör en brute force attack som tar lite tid (30 sekunder). Att ta bort blanksteg visar inte en signifikant hastighetstillväxt, men jag tror att webbläsaren bara behöver analysera mer.
Så är det till någon nytta att ta bort onödiga mellanslag och kommentarer för att påskynda helheten? 
Människor använder vanligtvis minimizer för att minska STORLEKEN på skriptet, för att förbättra nedladdningshastigheten snarare än att göra någon skillnad i hastigheten för att analysera skriptet.
Vitt utrymme och kommentarer har liten inverkan på hur lång tid det tar en webbläsare att utföra, eftersom tolkaren behöver kontrollera om det är vitt utrymme eller en kommentar, men i verkligheten kommer det att vara så minut med nuvarande datorkraft, det skulle vara omöjligt att märka någon påverkan.
STORLEK är dock fortfarande viktigt även med den stora bandbredden som finns i vår bredbandsvärld.
|
Mellanslag och kommentarer ökar storleken på JavaScript-filen, vilket saktar ner den faktiska nedladdningen av filen från servern - minifiering är processen att ta bort onödiga tecken från en JavaScript-fil för att göra den mindre och lättare att ladda ner.
Eftersom du nämner en brute force-attack är flaskhalsen förmodligen inte nedladdningen. Försök använda en profiler för att hitta vad som bromsar dig.
|
Det finns alltid en mening i att minifiera, kombinera och zippa dina tillgångar för att underlätta serverbelastningen.
Förminskning är den handling du refererar till, att ta bort onödigt stort utrymme och kommentarer för att minska nedladdningshastigheten.
Kombinering kommer sannolikt att visa en ännu större ökning av sidåtergivningshastigheten. det handlar om att slå ihop alla dina javascriptfiler till en och alla dina css-filer till en (det kan också göras för de flesta bilder, men det tar lite mer arbete). Detta görs för att minska antalet förfrågningar som webbläsaren måste göra mot din server för att kunna visa sidan.
GZipping är handlingen att ytterligare komprimera data, i ett zippat format, till webbläsarna som indikerar att de accepterar sådan data. Detta minskar storleken ytterligare, men lägger till lite extra arbetsbelastning i båda ändar. Du kommer sannolikt att se en nettovinst av det.
Beroende på vilken miljö du arbetar i finns det olika komponenter som hjälper dig med detta, som vanligtvis täcker alla ovanstående på en gång.
Tiden det tar för din kod att ladda ner från servern har en direkt inverkan på hur lång tid det tar att göra sidan. JavaScript blockerar, vilket innebär att ett JS-block kommer att förhindra all vidare rendering tills blocket har körts helt. Som sådan, där du lägger dina javascript-filer (dvs. i vilken punkt i renderingsprocessen de kommer att begäras), hur många förfrågningar som krävs för att den ska laddas ner helt och hur mycket data det finns att ladda ner, kommer att påverka på sidan laddas, som det ser ut för användaren.
När webbläsaren har analyserat din kod, vare sig det är javascript, css eller html, har det skapat interna representationer av den del som den behöver för att komma ihåg, och den faktiska formateringen påverkar inte längre den.
|
Jag tror inte att blanksteg i js-kod saktar ner körningen av den. Så vitt jag förstår tar en javascript-tolk bort alla kommentarer och överflödigt utrymme innan de bearbetas. Det kan dock påverka nedladdningstiden och därmed ladda tiden för en webbsida.
Ta en titt här för lite extra information.
|
Det har liten eller ingen inverkan på den faktiska bearbetningshastigheten, men ...
Mindre storlek => mindre bandbredd => lägre kostnader => ??? => vinst!
|
Ditt svar
StackExchange.ifUsing ("editor", function () {
StackExchange.using ("externalEditor", funktion () {
StackExchange.using ("snippets", function () {
StackExchange.snippets.init ();
});
});
}, "kodutdrag");
StackExchange.ready (funktion () {
var channelOptions = {
taggar: "" .split (""),
id: "1"
};
initTagRenderer ("". split (""), "" .split (""), channelOptions);
StackExchange.using ("externalEditor", funktion () {
// Måste aktivera redaktören efter utdrag, om utdrag aktiverade
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using ("snippets", function () {
createEditor ();
});
}
annat {
createEditor ();
}
});
funktion createEditor () {
StackExchange.prepareEditor ({
useStacksEditor: falsk,
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: sant,
showLowRepImageUploadWarning: true,
reputToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Drivs av \ u003ca href = \" https: //imgur.com/ \ "\ u003e \ u003csvg class = \" svg-icon \ "width = \" 50 \ "height = \" 18 \ "viewBox = \ "0 0 50 18 \" fill = \ "none \" xmlns = \ "http: //www.w3.org/2000/svg \" \ u003e \ u003cpath d = \ "M46.1709 9.17788C46.1709 8.26454 46.2665 7.94324 47.1084 7.58816C47.4091 7.46349 47.7169 7.36433 48.0099 7.26993C48.9099 6.97997 49.672 6.73443 49.672 5.93063C49.672 5.22043 48.9832 4.61182 48.1414 4.61182C47.4335 4.61182 46.72543 4.916.56 43.1481 6.59048V11.9512C43.1481 13.2535 43.6264 13.8962 44.6595 13.8962C45.6924 13.8962 46.1709 13.2535 46.1709 11.9512V9.17788Z \ "/ \ u003e \ u003cpath d = \" M32.492 10.1419C414.042.42 12.6 12.6 41.5985 12.6954 41.5985 10.1419V6.59049C41.5985 5.28821 41.1394 4.6623240.1061 4.66232C39.0732 4.66232 38.5948 5.28821 38.5948 6.59049V9.60062C38.5948 10.8521 38.2696 11.5455 37.0451 11.5455C35.8209 11.5455 35.4954 10.8521 35.4954 9.60062V6.59049C35.4953.4623.466 "/ \ u003e \ u003cpath fill-rule = \" evenodd \ "clip-rule = \" evenodd \ "d = \" M25.6622 17.6335C27.8049 17.6335 29.3739 16.9402 30.2537 15.6379C30.8468 14.7755 30.9615 13.5579 30.9615 11.95126. 59049C30.9615 5.28821 30.4833 4.66231 29.4502 4.66231C28.9913 4.66231 28.4555 4.94978 28.1109 5.50789C27.499 4.86533 26.7335 4.56087 25.7005 4.56087C23.1369 4.56087 21.0134 6.57349 21.0134 9.2793221.013 1109 12.7229 28.1161 12.7799 28.121 12.8346C28.1256 12.8854 28.1301 12.9342 28.1301 12.983C28.1301 14.4373 27.2502 15.2321 25.777 15.2321C24.8349 15.2321 24.1352 14.9821 23.5661 14.7787323.121 18 21.2429 15.0123 21.2429 15.6887C21.2429 16.7375 22.9072 17.6335 25.6622 17.6335ZM24.1317 9.27932C24.1317 7.94324 24.9928 7.09766 26.1024 7.09766C27.2119 7.09766 28.0918 7.94324 28.0918 9.27932C28.0918 1011.6 \ "/ \ u003e \ u003cpath d = \" M16.8045 11.9512C16.8045 13.2535 17.2637 13.8962 18.2965 13.8962C19.3298 13.8962 19.8079 13.2535 19.8079 11.9512V8.12928C19.8079 5.82936 18.4879 4.62866 14.379 4.6.66 4.628 .653 5.05154 11.6581 4.62866 10.3573 4.62866C9.34336 4.62866 8.57809 4.89931 7.9466 5.5079C7.58314 4.9328 7.10506 4.66232 6.51203 4.66232C5.47873 4.66232 5.00066 5.28821 5.00066 6.59049V11.951255.566 .90741C8.0232 7.58817 8.44431 6.91179 9.53458 6.91179C10.5104 6.91179 10.893 7.58817 10.893 8.94108V11.9512C10.893 13.2535 11.3711 13.8962 12.4044 13.8962C13.4375 13.8962 13.915 7 13.2535 13.9157 11.9512V8.90741C13.9157 7.58817 14.3365 6.91179 15.4269 6.91179C16.4027 6.91179 16.8045 7.58817 16.8045 8.94108V11.9512Z \ "/ \ u003e \ u003cpath d = \" M3.31675 6.575493.366663.36 791758 4.66232 0.313354 5.28821 0.313354 6.59049V11.9512C0.313354 13.2535 0.791758 13.8962 1.82471 13.8962C2.85798 13.8962 3.31675 13.2535 3.31675 11.9512V6.59049Z \ "/ \ u003e \ u003cp1d1 = 01.61 = 01.61 = 01.41 C0 2.87869 0.822846 3.57676 1.87209 3.57676C2.90056 3.57676 3.7234 2.87869 3.7234 1.98861C3.7234 1.1159 2.90056 0.400291 1.87209 0.400291Z \ "fill = \" # 1BB76E \ "/ \ u003e \ u003c / svg \ u00e \ u00e \ u00e \ u00e \ u00e
contentPolicyHtml: "Användarbidrag licensierade under \ u003ca href = \" https: //stackoverflow.com/help/licensing \ "\ u003ecc by-sa \ u003c / a \ u003e \ u003ca href = \" https://stackoverflow.com / legal / content-policy \ "\ u003e (content policy) \ u003c / a \ u003e",
allowUrls: sant
},
onDemand: sant,
discardSelector: ".discard-answer"
, direktShowMarkdownHelp: true, enableTables: true, enableSnippets: true
});
}
});
Tack för att du har bidragit med ett svar till Stack Overflow!
Var noga med att svara på frågan. Ge detaljer och dela din forskning!
Men undvik ...
Be om hjälp, förtydligande eller svara på andra svar.
Att göra uttalanden baserade på åsikt; säkerhetskopiera dem med referenser eller personlig erfarenhet.
För att lära dig mer, se våra tips för att skriva bra svar.
Utkast sparat
Utkast kasseras
Registrera dig eller logga in
StackExchange.ready (funktion () {
StackExchange.helpers.onClickDraftSave ('# login-link');
});
Registrera dig med Google
Registrera dig med Facebook
Registrera dig med e-post och lösenord
Skicka in
Lägg upp som gäst
namn
E-post
Obligatoriskt men aldrig visat
StackExchange.ready (
funktion () {
StackExchange.openid.initPostLogin ('. New-post-login', 'https% 3a% 2f% 2fstackoverflow.com% 2fquestions% 2f4423553% 2fdo-spaces-comments-slow-javascript-down% 23new-answer', 'question_page' );
}
);
Lägg upp som gäst
namn
E-post
Obligatoriskt men aldrig visat
Lägg upp ditt svar
Kassera
Genom att klicka på “Lägg upp ditt svar” godkänner du våra användarvillkor, sekretesspolicy och cookiepolicy
Inte svaret du letar efter? Bläddra bland andra frågor taggade javascript eller ställ din egen fråga.